package com.lyf.scm.admin.api.dto.es;

import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;

/**
 * 其他渠道计划ES实体
 *
 * @author Martin
 * @date 2020-10-28 19:25
 */
@Data
public class BigdataPredictlyEsEntity implements Serializable {

    /** es的id */
    private String id;
    /** 预测日期 */
    private String date;
    /** 业务单号 */
    private String business_no;
    /** 渠道 */
    private String channel;
    /** 地区 */
    private String area;
    /** 省 */
    private String province;
    /** 市 */
    private String city;
    /** 区、县节点 */
    private String district;
    /** 一级类目 */
    private String cate_l1;
    /** 二级类目 */
    private String cate_l2;
    /** 三级类目 */
    private String cate_l3;
    /** 四级类目 */
    private String cate_l4;
    /** 商品编码 */
    private String sku_key;
    /** 商品等级 */
    private String level;
    /** 节点id（门店） */
    private String node_id;
    /** 发货节点（仓） */
    private String deliver_id;
    /** sku单位 */
    private String unit;
    /** 库存水位 */
    private BigDecimal ss;
    /** 计划量 */
    private BigDecimal predict_sales;
    /** 上次计划量 */
    private BigDecimal last_predict_sales;
    /** 二级确认量 */
    private BigDecimal confirm_l2;
    /** 三级确认量 */
    private BigDecimal confirm_l3;
    /** 四级确认量 */
    private BigDecimal confirm_l4;
    /** 二级上次确认量 */
    private BigDecimal last_confirm_l2;
    /** 三级上次确认量 */
    private BigDecimal last_confirm_l3;
    /** 四级上次确认量 */
    private BigDecimal last_confirm_l4;
    /** 二级确认量状态 */
    private String confirm_status_l2;
    /** 三级确认状态 */
    private String confirm_status_l3;
    /** 四级确认状态 */
    private String confirm_status_l4;
    /** 确认目标 */
    private BigDecimal confirm_target;
    /** 第1周 */
    private BigDecimal sales_week_f_1;
    /** 第2周 */
    public BigDecimal sales_week_f_2;
    /** 第3周 */
    private BigDecimal sales_week_f_3;
    /** 第4周 */
    private BigDecimal sales_week_f_4;
    /** 第5周 */
    private BigDecimal sales_week_f_5;
    /** 第6周 */
    private BigDecimal sales_week_f_6;
    /** 第7周 */
    private BigDecimal sales_week_f_7;
    /** 第8周 */
    private BigDecimal sales_week_f_8;
    /** 第9周 */
    private BigDecimal sales_week_f_9;
    /** 第10周 */
    private BigDecimal sales_week_f_10;
    /** 第11周 */
    private BigDecimal sales_week_f_11;
    /** 第12周 */
    private BigDecimal sales_week_f_12;
    /** 第13周 */
    private BigDecimal sales_week_f_13;
    /** 开始时间 */
    private String start_date;
    /** 结束时间 */
    private String end_date;
    /** 创建时间 */
    private String create_time;
    /** 更新时间 */
    private String update_time;

    public void setStart_date(String start_date) {
        this.start_date = start_date;
    }

    public void setStart_date(LocalDate date) {
        if (date != null) {
            this.start_date = date.toString();
        }
    }

    public void setEnd_date(String end_date) {
        this.end_date = end_date;
    }

    public void setEnd_date(LocalDate date) {
        if (date != null) {
            this.end_date = date.toString();
        }
    }

    public void setCreate_time(String create_time) {
        this.create_time = create_time;
    }

    public void setCreate_time(LocalDateTime dateTime) {
        if (dateTime != null) {
            this.create_time = dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
        }
    }

    public void setUpdate_time(String update_time) {
        this.update_time = update_time;
    }

    public void setUpdate_time(LocalDateTime dateTime) {
        if (dateTime != null) {
            this.update_time = dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
        }
    }
}

